iT邦幫忙

2023 iThome 鐵人賽

DAY 11
0
自我挑戰組

2023年度學習分享系列 第 11

實做infrastructure(Google Drive上傳)

  • 分享至 

  • xImage
  •  

文章未來將更新於:
https://kevinyay945.com/golang-project-design/2023/infrastructure-for-google-drive/

  1. 開啟一個Google Cloud的Development Project

  2. 先開啟Google Drive API

  3. service account來新增一個account(進階設定都可以跳過)

  4. 點進剛剛建立的account產生一組授權的token

  5. 將這個檔案保存好,等等會需要使用

  6. 緊接著回到Detail這邊,將他的email複製,並且設定到你在google drive中的你希望共享的資料夾中共用名單中

  7. 接下來請在這個資料夾中放入一個不會跟別人重複名稱的檔案,並取得他的檔案名稱(假設叫做test.png)

  8. 將先前取得的token的文字放入.config.dev.yaml中(如果想要在yaml中放入換行,要加上>)
    ![](https://asset.kevinyay945.com/v1/temp-link/obsidian/2023-09-03-t85ys.png

  9. 要將.config.dev.yaml的OPEN_INFRASTRUCTURE設定為true

  10. 接著就可以跑跑看Test_check_token這個測試,看有沒有順利的取得權限

  11. 將這個檔案名稱(test.png)放到Test_get_parent_id中,來取得此資料夾的id,這個id在上傳資料的時候需要提供,用來決定上傳的位置(要取改程式碼中的內容)

  12. 取得parent_id的方法,還有個比較方便的,只要使用網頁把目標共享的資料夾打開,他網址後半段帶的就是parent_id了

  13. 接下來下面的上傳圖片跟下載圖片的測試都可以試著跑跑看
    https://github.com/kevinyay945/2023_asset_management/blob/v0.3.1/infrastructure/googledrive/google_drive_test.go#L67
    https://github.com/kevinyay945/2023_asset_management/blob/v0.3.1/infrastructure/googledrive/google_drive_test.go#L73

另外,下面是我這次找文件的時候查詢的相關文章,如果未來有需要延伸其他功能的時候可以到下面這些網址找找看

https://developers.google.com/drive/api/quickstart/go?hl=en

query
https://developers.google.com/drive/api/guides/ref-search-terms?hl=en

get parent id
https://stackoverflow.com/questions/69932970/how-do-i-get-the-parent-folder-using-the-google-drive-api


上一篇
swagger產生Rest API Handler
下一篇
將上傳圖片的功能組裝起來(domain&application)
系列文
2023年度學習分享30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言